chore: Convert SentrySessionReplayIntegration to Swift#7102
Conversation
…coa-996-refactor-sentrysessionreplayintegrationm-in-swift
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #7102 +/- ##
=============================================
+ Coverage 85.015% 85.036% +0.020%
=============================================
Files 467 469 +2
Lines 28330 28356 +26
Branches 12493 12461 -32
=============================================
+ Hits 24085 24113 +28
Misses 4196 4196
+ Partials 49 47 -2
... and 8 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
…SentryReplayDisplayLinkWrapper and add conditional extension for iOS and tvOS.
Performance metrics 🚀
|
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 5807865 | 1230.73 ms | 1259.50 ms | 28.77 ms |
| 50e7b3e | 1221.54 ms | 1250.81 ms | 29.27 ms |
| bed2eb7 | 1215.88 ms | 1247.14 ms | 31.27 ms |
| 2b4e787 | 1226.06 ms | 1258.65 ms | 32.59 ms |
| 013fd4d | 1216.02 ms | 1242.16 ms | 26.14 ms |
| 29f846e | 1210.51 ms | 1238.66 ms | 28.15 ms |
| 79e2bb8 | 1216.37 ms | 1242.42 ms | 26.05 ms |
| 83bf9af | 1213.30 ms | 1234.18 ms | 20.89 ms |
| 2e5230b | 1207.41 ms | 1240.41 ms | 33.00 ms |
| 1357911 | 1222.84 ms | 1258.38 ms | 35.54 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 5807865 | 24.14 KiB | 1.06 MiB | 1.04 MiB |
| 50e7b3e | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| bed2eb7 | 24.14 KiB | 1.07 MiB | 1.04 MiB |
| 2b4e787 | 24.14 KiB | 1.07 MiB | 1.04 MiB |
| 013fd4d | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| 29f846e | 24.14 KiB | 1.07 MiB | 1.04 MiB |
| 79e2bb8 | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| 83bf9af | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| 2e5230b | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| 1357911 | 24.14 KiB | 1.07 MiB | 1.04 MiB |
Previous results on branch: itay/cocoa-996-refactor-sentrysessionreplayintegrationm-in-swift
Startup times
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 37cd8e6 | 1225.06 ms | 1248.35 ms | 23.29 ms |
| a4bbd41 | 1205.02 ms | 1246.15 ms | 41.13 ms |
| f74dca9 | 1223.67 ms | 1260.06 ms | 36.39 ms |
| 7b14837 | 1221.20 ms | 1256.64 ms | 35.44 ms |
| 102508e | 1218.58 ms | 1251.80 ms | 33.22 ms |
| 2a4fef7 | 1217.58 ms | 1249.29 ms | 31.71 ms |
| 00ba50a | 1224.80 ms | 1257.04 ms | 32.24 ms |
| 455600e | 1214.37 ms | 1249.60 ms | 35.22 ms |
| 945e4e8 | 1224.23 ms | 1255.27 ms | 31.04 ms |
| 542b03c | 1216.48 ms | 1247.83 ms | 31.35 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 37cd8e6 | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| a4bbd41 | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| f74dca9 | 24.14 KiB | 1.08 MiB | 1.06 MiB |
| 7b14837 | 24.14 KiB | 1.08 MiB | 1.06 MiB |
| 102508e | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| 2a4fef7 | 24.14 KiB | 1.05 MiB | 1.03 MiB |
| 00ba50a | 24.14 KiB | 1.04 MiB | 1.02 MiB |
| 455600e | 24.14 KiB | 1.08 MiB | 1.06 MiB |
| 945e4e8 | 24.14 KiB | 1.05 MiB | 1.03 MiB |
| 542b03c | 24.14 KiB | 1.04 MiB | 1.02 MiB |
…onal extension and adding helper method for testing in SentrySessionReplayIntegrationObjC.
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Show resolved
Hide resolved
philprime
left a comment
There was a problem hiding this comment.
Great work, we are getting there. Left some feedback.
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SessionReplayFileManager.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SessionReplayFileManager.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SessionReplayRecovery.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SessionReplayRecovery.swift
Outdated
Show resolved
Hide resolved
…r session methods
…for improved error handling
…coa-996-refactor-sentrysessionreplayintegrationm-in-swift
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SessionReplayRecovery.swift
Outdated
Show resolved
Hide resolved
…enhance error handling and update observer notifications
…coa-996-refactor-sentrysessionreplayintegrationm-in-swift
Semver Impact of This PR🟢 Patch (bug fixes) 📋 Changelog PreviewThis is how your changes will appear in the changelog. Bug Fixes 🐛
Internal Changes 🔧
Other
🤖 This preview updates automatically when you update the PR. |
…coa-996-refactor-sentrysessionreplayintegrationm-in-swift
|
@itaybre please update the PR, it shows a lot of unrelated changes in the review UI. |
…coa-996-refactor-sentrysessionreplayintegrationm-in-swift
philprime
left a comment
There was a problem hiding this comment.
LGTM, thanks for tackling this
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Outdated
Show resolved
Hide resolved
Sources/Swift/Integrations/SessionReplay/SentrySessionReplayIntegration.swift
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.
📜 Description
Converts SentrySessionReplayIntegration to Swift.
Took the chance to remove some logic from SentrySessionReplayIntegration to other classes
💡 Motivation and Context
Work to deprecate SentryDependencyContainer and lower the amount of code in ObjC
💚 How did you test it?
Ran the demo APP
📝 Checklist
You have to check all boxes before merging:
sendDefaultPIIis enabled.Closes #7105